#ifndef BSPLINE_H
#define BSPLINE_H

#include <QList>
#include <QVector>

class BSpline
{
public:
    BSpline();
    QVector<QPointF> generateCurve(QVector<QPointF> basePoints, int currentK, double step);
private:
    QVector<QPointF> getCtrlPoint(QVector<QPointF> basePoints);
    double N(int k, int i, double u);
    double N1(int i, double u);
    double N2(int i, double u);
    double N3(int i, double u);
};

#endif // BSPLINE_H
